package main

import "fmt"

const i int = 10
const pi = 3.1415926535897

type TestType int

const (
	A TestType = iota
	B
	C
)

type ByteSize float64

const (
	_           = iota
	KB ByteSize = 1 << (10 * iota)
	MB
	GB
	TB
	PB
	EB
	ZB
	YB
)

func showTypeAndValue(name string, a interface{}) {
	fmt.Printf("%s is %T = %v\n", name, a, a)
}

func main() {
	showTypeAndValue("pi", pi)
	showTypeAndValue("C", C)
	showTypeAndValue("KB", KB)
	showTypeAndValue("YB", YB)
}
